package cn.iocoder.yudao.module.resource.dal.mysql.tagclassify;

import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
import cn.iocoder.yudao.module.resource.dal.dataobject.tagclassify.TagClassifyDO;
import org.apache.ibatis.annotations.Mapper;
import cn.iocoder.yudao.module.resource.controller.admin.tagclassify.vo.*;

/**
 * 标签分类 Mapper
 *
 * @author 芋道源码
 */
@Mapper
public interface TagClassifyMapper extends BaseMapperX<TagClassifyDO> {

    default PageResult<TagClassifyDO> selectPage(TagClassifyPageReqVO reqVO) {
        return selectPage(reqVO, new LambdaQueryWrapperX<TagClassifyDO>()
                .likeIfPresent(TagClassifyDO::getName, reqVO.getName())
                .eqIfPresent(TagClassifyDO::getParentId, reqVO.getParentId())
                .betweenIfPresent(TagClassifyDO::getCreateTime, reqVO.getCreateTime())
                .orderByDesc(TagClassifyDO::getId));
    }

    default  TagClassifyDO getOne(String name){
        return this.selectOne(TagClassifyDO::getName,name);
    }

}